/* NoX (NoC Simulator)
 *
 * Dept. of Computer Science & Engineering, Pennsylvania State University.
 * All Rights Reserved.
 *  
 * 1. License     
 * NoX is distributed free of charge for academic, educational, noncommercial 
 * research purposes as long as this notice in its entirety is preserved in
 * every file included in this package.
 * All commercial use of this program requires separate licence. Contact the
 * author for details.
 * 
 * 2. All the publications that used the simulation results generated by the 
 * NoX should notify the author of the publication information and put 
 * following reference.
 *
 *  http://www.cse.psu.edu/~dpark/nox/
 * 
 * 3. Modification of the source code is permitted and encouraged as long as 
 * it follows the terms described in this copyright notice.
 *
 * 4. The author is not responsible for any problems caused by possible errors
 * of the NoX package. Therefore, users should verify the simulation result
 * before using it in their publication.
 *
 * Dept. of Computer Science & Engineering, Pennsylvania State University.
 * Contact: dpark@cse.psu.edu 
 * 
 * 6. If problems are found with the NoX package, please send an email to the
 * author for discussion and correction.

 */

/* Update History
 *
 *
 */


#ifndef POWER_H
#define POWER_H

// For toplogy Exploration many of the defines here are parameterized and
//declared as global variables

// Definitions of the power value.
// Power unit is 'pJ' energy in all cases.
#define PD_ROUTER_CONSTANT           (0.087 * SWITCH_ACTIVITY)

#define PD_BUFCTR                          0.0
#define PD_SECDED                          0.0
#define PD_CRCCHK                          0.0
#define PD_HBHCTR                          0.0
#define PD_HBHBUF                          0.0

#define PL_BUFCTR                          0.0
#define PL_SECDED                          0.0
#define PL_CRCCHK                          0.0
#define PL_HBHCTR                          0.0
#define PL_HBHBUF                          0.0
#define PL_E2ECTR                          0.0
#define PL_E2EBUF                          0.0



#define SWITCH_ACTIVITY   0.1
#define LINK_LENGTH        2

#define E2E_SRC_BUF_SIZE 10*MSG_LEN // E2E retransmission buffer size at sender. Assume it can hold up to 10 messages.
#endif
